package com.yidu.t299.service.cfj.impl;

import com.yidu.t299.dao.cfj.TimeClockMapper;
import com.yidu.t299.domain.cfj.TimeClock;
import com.yidu.t299.service.cfj.TimeClockBiz;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import javax.annotation.Resource;
import java.util.List;

/**
 * @author
 * @version 1.0.0
 */
@Service
@Transactional
public class TimeClockBizImpl implements TimeClockBiz {
    @Resource
    private TimeClockMapper timeClockMapper;

    /**
     * 根据校区编号删除该校区信息
     *
     * @param annalId 编号
     * @return 影响的行数(返回1则为成功)
     */
    @Override
    public int deleteByPrimaryKey(Integer annalId) {
        return timeClockMapper.deleteByPrimaryKey(annalId);
    }

    /**
     * 添加信息
     *
     * @param timeClock 对象
     * @return 影响的行数(返回1则为成功)
     */
    @Override
    public int insert(TimeClock timeClock) {
        return timeClockMapper.insert(timeClock);
    }

    /**
     * 根据编号查询指定的信息
     *
     * @param annalId 编号
     * @return 对象
     */
    @Override
    public TimeClock selectByPrimaryKey(Integer annalId) {
        return timeClockMapper.selectByPrimaryKey(annalId);
    }

    /**
     * 按条件分页查询校区数据集合
     *
     * @param rows      每页的行数
     * @param page      页码
     * @param condition 条件参数
     * @return 校区对象集合
     */
    @Override
    public List<TimeClock> selectByPage(int rows, int page, String condition) {
        return timeClockMapper.selectByPage(rows, page, condition);
    }

    /**
     * 按条件查询school表中数据行数
     *
     * @param condition 条件参数
     * @return 数据行数
     */
    @Override
    public int selectCount(String condition) {
        return timeClockMapper.selectCount(condition);
    }

    /**
     * 根据信息修改其数据
     *
     * @param timeClock
     * @return 影响的行数(返回1则为成功)
     */
    @Override
    public int updateByPrimaryKey(TimeClock timeClock) {
        return timeClockMapper.updateByPrimaryKey(timeClock);
    }

    /**
     * 根据实体类各属性值生成条件字符串
     *
     * @param timeClock
     * @return 条件字符串
     */
    @Override
    public String getCondition(TimeClock timeClock) {
        // 定义条件字符串变量，初始值为空格字符串
        String condition = " ";
        // 如果对象为空，则直接返回空条件字符串
        if (timeClock == null) {
            return condition;
        }
        // 如果名称不为空
        if (timeClock.getRecordName() != null && timeClock.getRecordName().trim().length() != 0) {
            condition += " and record_name like '%" + timeClock.getRecordName() + "%'";
        }
        if (timeClock.getDutyState() != null && timeClock.getDutyState().trim().length() != 0) {
            condition += " and duty_state like '%" + timeClock.getDutyState() + "%'";
        }

        // 返回条件字符串
        return condition;
    }
}
